#pragma once

/***/

#define MAX_ACCOUNT_LEN		100
#define MAX_PASSWORD_LEN	100
#define MAX_NICKNAME_LEN	100
typedef struct _stAccountData
{
	TCHAR szAccoutName[MAX_ACCOUNT_LEN];
	TCHAR szPassword[MAX_PASSWORD_LEN];
	TCHAR szNick[MAX_NICKNAME_LEN];
}AccountData;

class IBuddylist;
class CAccountInfoMgr
{
public:
	static CAccountInfoMgr *GetInstance();
	static void ReleaseInstance();

	~CAccountInfoMgr(void);

private:
	CAccountInfoMgr(void);
	
public:
	void SetAccountName(TCHAR *szAccount);
	void SetPassword(TCHAR *szPassword);
	void SetNickName(TCHAR *szNickName);
// 	void SetMyStatus(int nStatus);

	HRESULT GetBuddylist(IBuddylist **ppBuddylist);
	CString GetAccountName();
	CString GetNickName();
// 	int		GetMyStatus();

public:
	static CAccountInfoMgr		*s_Intance;
	AccountData			m_stAccount;
	IBuddylist			*m_pBuddylist;
};
